Piantala Elettrica Virtuale
Il Protocollo VPP si basa sul Protocollo Live MQTT. Si prega di fare riferimento a questa pagina prima di procedere. Vedi Controllo MQTT Live.
L'impostazione iniziale del VPP DEVE essere eseguita da Eniris. Si prega di contattare Eniris prima di seguire i passaggi successivi.
Collegamento al Broker MQTT
Si prega di fare riferimento alla seguente sezione per scoprire come collegarsi al Broker MQTT di Eniris: Collegamento al Broker MQTT
Funzionalità VPP
Il VPP è progettato per ricevere un punto di comando/strategia per gruppo di dispositivi (ad esempio, Solare, Accumulo) e aggregare il punto di comando tra i controllori connessi al VPP.
Mentre il Protocollo Live MQTT invierebbe un comando a un singolo controllore, il VPP consente all'utente di inviare un comando a un gruppo di controllori.

Aggiunta di Controllori al VPP




Quando si aggiunge il Segnale MQTT di Eniris, viene mostrato un campo VPP ID
. Inserire il VPP ID ricevuto qui.


Algoritmo di Aggregazione
I punti di comando sono aggregati in base alla capacità dei dispositivi che rientrano nei controllori individuali.
Argomenti MQTT
Una volta completata l'impostazione iniziale, verranno forniti un VPP ID e un Nome Utente MQTT (e password).
Argomento In Entrata
Argomento: vpp/{MQTT Username}/{VPP ID}
Questo argomento viene utilizzato dall'utente per inviare un comando aggregato al VPP.
Corpo:
{
"msg_id": <Incremental message id>(int),
"vpp_id": <VPP ID>(str)
"time": "<Unix Timestamp>(int)",
"fields": {
"<Component Policy>": "<Policy Type>",
"<Component Power Setpoint>": <Setpoint in watts>
}
}
Le politiche e i punti di comando dei componenti possono essere trovati qui: Componenti e Politiche MQTT
Argomento di Riconoscimento
Argomento: vpp/{MQTT Username}/{VPP ID}/acknowledgement
Dopo che un comando è stato inviato, il VPP risponderà con un riconoscimento, indicando se il comando è stato ricevuto con successo o meno.
Corpo:
{
"payload": {
"fields": {
"responseCode": <Success/Failure Code>(int),
"ack": <Acknowledgement Message>(str)
},
"target": <VPP ID>(str)
},
"message_type": <Type of Message>(str)
}
Argomento di Feedback
Argomento: vpp/{MQTT Username}/{VPP ID}/feedback
L'argomento di feedback contiene il feedback restituito dai singoli controllori.
Corpo:
{
"payload": {
"updated_on": <Unix Timestamp of the data>(str)
"feedback_dict": {
<Feedback Dict>(dict)
},
"target": <Site Node ID>(str)
},
"message_type": <Type of Message>(str)
}
La struttura del dizionario di feedback può essere trovata qui: Struttura del Payload di Feedback MQTT
Argomento di Feedback Aggregato
Argomento: vpp/{MQTT Username}/{VPP ID}/aggregated_feedback
Il VPP aggrega il feedback ricevuto da ciascun controllore individuale.
Corpo:
{
"payload": {
"updated_on": <Unix Timestamp of the data>(str)
"feedback_dict": {
<Aggregated Feedback Dict>(dict)
},
},
"message_type": <Type of Message>(str)
}
Il dizionario di feedback aggregato è strutturato in modo simile alla Struttura del Payload di Feedback MQTT. Tuttavia, i valori delle stringhe, come le strategie eseguite, non possono essere aggregati e quindi non sono inclusi.
Argomento di Comandi Inviati
Argomento: vpp/{MQTT Username}/{VPP ID}/dispatched_commands
Quando i comandi vengono inviati ai controllori dal VPP, ciò viene segnalato utilizzando questo argomento.
Corpo:
{
"payload": {
"aggregated": {
<Component Name>(str): <CommandPower Value>(float)...
},
"dispatched_commands": [
<List of individual commands sent to the controllers>
],
},
"message_type": <Type of Message>(str)
}
La struttura del payload dei singoli comandi inviati può essere trovata qui: Struttura del Payload di Feedback MQTT.
Argomento di Avviso
Argomento: vpp/{MQTT Username}/{VPP ID}/warning
Se si verifica un errore o un avviso nel VPP, un messaggio verrà inviato tramite questo argomento MQTT.
Corpo:
{
"payload": {
"fields": {
<Field Dictionary>(dict)
},
"target": <VPP ID>(str)
},
"message_type": <Type of Message>(str)
}